.dot {
  margin: 0;
  font-size: 13px;
  line-height: 18px;
}

.dot-group {
  display: inline-block;
  border: 1px solid $border;
  margin: 0 5px 0 0;
  line-height: 0;
  padding: 0 3px;
}

//scale
.scale-arrow {
  position: relative;
  &:before {
    content: "";
    position: absolute;
    border-style: solid;
    border-width: 7px;
    border-color: transparent;
    border-bottom-color: $bg-default;
    top: -13px;
    left: calc(50% - 7px);
  }
}

.modal-shell {
  width: 600px;
}

.machine-host {
  min-height: 168px;

  .machine-info {
    vertical-align: middle;
    text-align: center;
    padding: 10px;
    white-space: normal;
    color: $info;
  }
}

.machine-driver {
  height: 100px;
  width: 100px;
  margin: 0 auto;

  &.generic { @include generic; }
  &.amazonec2 { @include amazonec2; }
  &.azure { @include azure; }
  &.digitalocean { @include digitalocean; }
  &.exoscale { @include exoscale; }
  &.oci { @include oci; }
  &.openstack { @include openstack; }
  &.packet { @include packet; }
  &.rackspace { @include rackspace; }
  &.vmwarevsphere { @include vmwarevsphere; }
  &.other { @include other; }
  &.custom { @include custom; }
  &.custom-driver { @include custom-driver; }
  &.import-driver { @include import-driver; }
  &.import { @include import; }
  &.aliyunecs { @include aliyunecs; }
  &.amazoneks { @include amazoneks; }
  &.amazoneksv2 { @include amazoneks; }
  &.azureaks { @include azureaks; }
  &.googlegke { @include googlegke; }
  &.tencenttke { @include tencenttke; }
  &.huaweicce { @include huaweicce; }
  &.oracleoke { @include oracleoke; }
  &.otc { @include otc; }
  &.route53 { @include route53; }
  &.cloudflare { @include cloudflare; }
  &.alidns { @include alidns; }
}

.cluster-launch {
  .cluster-driver-box {
    border: solid $light-grey 1px;
    padding: 15px 0px;
    max-height: 130px;
    text-decoration: none;
    position: relative;

    &.small {
      max-height: 100px;
      min-width: 175px;
      .machine-driver {
        height: 50px;
        width: 50px;
        border-right: none;
        background-size: 50px 50px;
      }
      .custom-driver,
      .import-driver {
        background-size: 25px 25px;
      }
      &.otccce {
        max-height: 83px;
        p {
          margin: 0; // breakpoint in medium resets the padding
        }
      }
    }

    &:hover {
      outline: 4px solid $link-color;
      border-color: $link-color;
    }

    &.active:after {
      content: $icon-check;
      top: -15px;
      right: -15px;
      font-family: 'rancher-icons';
      font-size: 18px;
      position: absolute;
      background-color: $info;
      height: 29px;
      width: 29px;
      line-height: 29px;
      border-radius: 50%;
      color: white;
      padding-left: 5px;
    }
  }
  .machine-driver {
    height: 100px;
    width: 100px;
    float: left;
    border-right: solid $light-grey 1px;

    &.custom-driver,
    &.import-driver {
      background-size: 75px 75px;
      background-repeat: no-repeat;
      background-position: center;
    }
  }
  .driver-content {
    overflow: hidden;
    padding-left: 5px;
  }
}

.machine-driver-empty {
  height: 100px;
  margin-top: 10px;
  padding-top: 50px;
  color: $text-muted;
}

.error-loading-driver {
  border: 2px solid red !important;
}

.api-field LABEL {
  text-transform: initial;
  display: block;
}

/**********
* Nav boxes (chooes a host/registry driver)
**********/
.nav-boxes {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;

  .nav-box-item {
    min-height: 120px;
    flex: 0 1 auto;
    position: relative;
    outline: 0;
    opacity: 0.5;
    background-color: $light-grey;
    border: 2px solid $light-grey;
    color: $mid-grey;
    text-align: center;
    padding: 0;

    &:focus {
      outline: -webkit-focus-ring-color auto 5px;
      filter: none;
      -webkit-filter: none;
      -moz-filter: none;
      -ms-filter: none;
      -o-filter: none;
    }

    &.active {
      opacity: 1;
      background-color: white;
      border-color: $light-grey;
      border-width: 2px;
    }
  }

  .driver {
    background-position: center center;
    background-repeat: no-repeat;
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    position: relative;
    max-width: 190px;
    margin-right: 14px;
    position: relative;

    &.error-loading-driver {
      filter: none;
      -webkit-filter: none;
      -moz-filter: none;
      -ms-filter: none;
      -o-filter: none;

      .icon-alert {
        position: absolute;
        font-size: 4em;
        left: calc(50% - 30px);
        top: 15px;
      }
    }

    .driver-name {
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    > div {
      height: 100px;
      width: 100px;
      margin: 0 auto;
      background-position: center center;
      background-repeat: no-repeat;
    }

    > div {
      height: 100px;
      width: 100px;
      margin: 0 auto;
      background-position: center center;
      background-repeat: no-repeat;
    }

    &.active {
      filter: none;
      -webkit-filter: none;
      -moz-filter: none;
      -ms-filter: none;
      -o-filter: none;
    }

    p {
      margin-top: 0
    }

    .driver-badge {
      display: inline-block;
      position: absolute;
      left: 0;
      top: 10;
      text-transform: uppercase;
    }
  }

  .driver-coming-soon {
    opacity : 0.5;
    border: 0;
    background-color: transparent;

    &:after {
      content: 'Coming Soon';
      position: absolute;
      bottom: -10px;
      left: 0;
      right: 0;
    }
  }

  &.checked-active .active:after {
    content: $icon-check;
    top: -15px;
    right: -15px;
    font-family: 'rancher-icons';
    font-size: 18px;
    position: absolute;
    background-color: $info;
    height: 29px;
    width: 29px;
    line-height: 30px;
    border-radius: 50%;
    color: white;
  }
}

.launch-cluster {
  .driver {

    &.nav-box-item {
      opacity: 1;
      filter: none;
      -webkit-filter: none;
      -moz-filter: none;
      -ms-filter: none;
      -o-filter: none;
      text-decoration: none;

      &.import,
      &.custom {
        .machine-driver {
          filter: grayscale(100%);
          -webkit-filter: grayscale(100%);
          -moz-filter: grayscale(100%);
          -ms-filter: grayscale(100%);
          -o-filter: grayscale(100%);
        }
      }

      &:hover {
        outline: 5px solid $link-color;
      }
    }
  }
}

ol {
  counter-reset: li;
  margin: 20px 0;
  padding-left: 0;
}
ol > li {
    position: relative;
    margin: 0 0 25px 2em;
    padding: 10px 20px 10px 40px;
    list-style: none;
    background: $accent-bg;
    border: solid $accent-border 1px;
}
ol > li::before {
    content: counter(li);
    counter-increment: li;
    position: absolute;
    // top: calc(50% - 20px);
    left: -14.5px;
    width: 25px;
    height: 25px;
    line-height: 26px;
    margin-right: 8px;
    border-radius: 50%;
    text-align: center;
    background: $info;
    color: white;
  }

.box ol > li {
    background: lighten($accent-bg, 2);
    border: solid $accent-border 1px;
}

.host-blurb {
  margin-right: 10px;
}
